package ar.com.waabox.tictactoe;
/**
 * Representation of a game movement.
 * 
 * @author waabox (waabox [at] gmail dot com)
 * 
 * @Date Jun 22, 2009 
 */
public final class BoardBox {
  
  public final static BoardBox UP_LEFT = new BoardBox(0,1);
  public final static BoardBox UP_MIDDLE = new BoardBox(0,2);
  public final static BoardBox UP_RIGHT = new BoardBox(0,3);
  
  public final static BoardBox MIDDLE_LEFT = new BoardBox(1,1);
  public final static BoardBox MIDDLE_MIDDLE = new BoardBox(1,2);
  public final static BoardBox MIDDLE_RIGHT = new BoardBox(1,3);
  
  public final static BoardBox DOWN_LEFT = new BoardBox(2,1);
  public final static BoardBox DOWN_MIDDLE = new BoardBox(2,2);
  public final static BoardBox DOWN_RIGHT = new BoardBox(2,3);
  
  private final Integer xPosition;
  private final Integer yPosition;
  /**
   * Construction of the board should be lik this.
   * 
   * <code>
   *  0  --  1 | 2 | 3 
   *  1  --  1 | 2 | 3
   *  2  --  1 | 2 | 3
   * </code>
   * 
   * Where 0,1,2 is the X possition.
   * Where 1,2,3 is the Y possition.   
   * 
   * @param x {@link Integer} x possition on the board.
   * @param y {@link Integer} y possition on the board.
   */
  private BoardBox(final Integer x, final Integer y) {
    xPosition = x;
    yPosition = y;
  }
  /**
   * @return {@link Integer} the xPosition
   */
  public final Integer getX() {
    return xPosition;
  }
  /**
   * @return {@link Integer} the yPosition
   */
  public final Integer getY() {
    return yPosition;
  }
}